1. Field of the Invention
This invention relates to secure controllers in secure end-to-end communication systems. More particularly, the invention relates to vault controllers for managing resources in secure environments or vaults individually dedicated to an authorized user for conducting electronic business in a distributed information system, e.g. the Internet.
2. Background Discussion
Traditionally, organizations, such as retailers, banks, and insurance companies in conducting electronic business, register their customers or users and control their access to business software applications with a user identification (user ID) and password. The user ID and password establish a user identity for accessing secure information. The password is the “virtual key” that authenticates a user. However, a password does not provide the security needed for electronic business. Passwords have the following limitations:
(a) Can be compromised during log-on by on-lookers;
(b) Can be easily intercepted on the Internet if the transaction is not secured with a secure web protocol, such as a secure socket layer (SSL);
(c) Authenticate a user to a host but not a host to a user;
(d) Can be discovered using automatic “trial and error” techniques;
(e) Do not protect transmitted information; and
(f) Do not ensure the access is limited to authorized entities and applications.
A new approach to conducting electronic business on the Internet is described in the cross-reference application. In this approach, digital keys have replaced user identification password pairs. Public key cryptography uses mathematically related public-private key pairs. Only the private key can decrypt the information the public key has encrypted. The public key can be made available to anyone. The private key is kept secret by the holder.
Just as digital keys are replacing user identification-password pairs in electronic business, digital signals are replacing physical signatures. A digital signature is a coded message affixed to a document or data that helps guarantee the identity of the sender, thereby providing a greater level of security of the physical signature. A digital signature identifies the sender because only the sender's private key can create the signature. The key also helps ensure the content of the signed message cannot be altered without the recipient being able to discover that the message has been altered. Digital certificates are replacing their physical counterpart—hard copy credentials. Digital certificates issued by a certification authority vouch for (or certify) the key of an individual, software application, organization or business. The certificate performs a role similar to that of a driver's license or medical diploma—the certificate certifies that the bearer of the corresponding private key is authorized (by an organization) to conduct certain activities for that organization.
However, the life cycle of digital certificates is similar to that of physical certificates. Digital certificates are issued after authorization in which a user is given the right to use a digital certificate for classified amount of time. The certificate may be temporarily suspended when a user reports a lost certificate. The certificate may be resumed or revoked by the organization. Finally, digital certificates expire and for secure end-to-end communications in electronic business, the certificate must be validated to determine whether the certificate has expired, been revoked, or suspended.
Digital certificates are issued through authorized registrars known as Registration Authorities (RAs). The authorities determine whether the applicant should be authorized to access secure applications or services and set in motion the process to issue a certificate. A Certification Authority (CA) issues the digital certificate after approval by the Registration Authority. The certificate is a binding between a public key and an identity, i.e., a person, organization, or computer device. The certificate includes a subject name; issuer name; public key; validity; unique serial number; and CA digital signature. A CA guarantee's the authenticity of the certificate through its digital signature. The certificate may be revoked at any time. The serial numbers of the revoked certificates are added to a Certification Revoked List (CRL) published in an X.500 Directory based on a standard defined by the International Telecommunications Union (ITU).
IBM “Vault” technology, described in the related application Ser. No. 08/980,022, supra provides strong authentication of clients and servers using digital keys and digital certificates for conducting electronic business. Briefly stated, “Vault” technology provides a secure environment in a web server using a vault controller for running a secure web-based registration process and enabling secure applications of an organization for the conduct of electronic business. The controller provides security from other processes running on the same server in personal storage vaults, e.g. a directory on disk to which only the owner has a key. The content of the vault is encrypted and contains an encryption key pair and signing key pair, both of which are password protected. Each vault has a unique distinguished name in an X.500 directory that provides storage for specific items essential to a Public Key Infrastructure (PKI) using digital certificates. Certificate authorities, Registration Authorities, Certificate Management Services, and Distributed Directory Services are used to verify the identity and authority of each party involved in transactions conducted over the Internet. System operators, administrators, Certificate authorities, Registration authorities and others cannot get to stored information or secure processes in such personal vaults. Combined with a Secure Sockets Layer (SSL) communication protocol, the controller enables secure transactions to be conducted between end users and others, e.g. business organizations using the personal vaults.
In order to effectively conduct electronic business in a secure end to end manner, there is a need for a vault controller which can manage browser requests to user-independent, multi-threaded, persistent and stateful secure processes in dedicated vaults linked to an user with a specific vault access certificate.